May 31, 1996 C. Dewhurst Omit unused pins, e.g. for CLB
June 21, 1996 C. Dewhurst Assign names to unnamed signals
June 26, 1996 D. Gamble Included ports so they would be counted as net connections.
July 29, 1996 C. Dewhurst Use DWVERSION for program version
}
$NOTES
This report form produces a XNF netlist for a Xilinx
4000 design.
Limitations:
This report form must be run using the Report
(Smash/Xilinx) tool.
Attribute Where Description
see the Xilinx Design Kit documentation for a complete
list of the attributes required.
*** IMPORTANT NOTE ***
This netlist script is provided with DesignWorks on an "as is" basis with no guarantee that it will work in any particular environment. Capilano Computing has no control over the file formats that may be used by these systems. These scripts have generally been created and tested in conjunction with DesignWorks users and were developed for use with a specific version of the target system. The third party developer may change formats at any time, and we do not have the resources to track every version of every system on the market.
If this script does not appear to generate the format required for your system, we are happy to assist customers in generating the appropriate format. Please contact us at tech@capilano.com and provide a sample netlist and as much information as you can about the required format.
$END
{
The following block is here to catch any attempt to use an old
Report generator. This is ignored by XReport and Scripter.
}
$DEFINEBLOCK(OldReport)
$CHECK(This report format requires the XReport tool or DesignWorks 4.0) $PURE $PHYSICAL $FLAT
$END
{
The following table defines the type names of i/o pads
and their corresponding pin type for use in EXT records.
}
$DEFINEBLOCK(PadTrans)
ipad I
opad O
iopad B
upad U
$END
{
The following table defines the type names of devices
that should NOT be listed in SYM records. This includes
I/O pads and various special symbols.
7/29/96 CD Removed XC4*. Now done by checking for X_PART.
}
$DEFINEBLOCK(NoSYMList)
ipad
opad
iopad
upad
TIMESPEC
TIMEGRP
$END
{
Define the output formats for pin parameters.
The first item on each line is the field name,
the second item is the match value, the last item
is the report string to interpret if the given field
matches the given value.
Note that table items are delimited by tabs, so the column
alignment may not be what it seems, depending on the editor
you use to look at it!
}
$DEFINEBLOCK(PINParams)
&Invert.Pin ,INV
&X_PIN_PARAM ,&X_PIN_PARAM
&X_PIN_TNM ,TNM=&X_PIN_TNM
&X_PIN_TS ,&X_PIN_TS
$END
{
Note regarding bus names: We want to insert the name of
the enclosing bus in front of any signal name, but some of
our libraries had busses named things like "A[0:15]", so
we have to do the following weirdness with regular expressions
to extract the reasonable characters from the bus name.